package com.kalvan.log.logback.appender;

import ch.qos.logback.classic.Level;
import ch.qos.logback.classic.LoggerContext;
import ch.qos.logback.core.ConsoleAppender;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
 * 自定义控制台日志，如果root日志级别是debug则启用，否则不输出日志
 *
 * @param <E>
 * @author chenliang
 */
public class ExtConsoleAppender<E> extends ConsoleAppender<E> {
    private static Boolean enable = null;
//
//    @Override
//    protected void append(E eventObject) {
//        if (enable == null && eventObject != null) {
//            LoggerContext lc = (LoggerContext) LoggerFactory
//                    .getILoggerFactory();
//            Level rootLevel = lc.getLogger(Logger.ROOT_LOGGER_NAME).getLevel();
//            if (Level.DEBUG.equals(rootLevel)) {
//                // 如果root 的日志=DEBUG 则启用console
//                enable = true;
//            } else {
//                // 如果root 的日志>DEBUG 则不启用console
//                enable = false;
//            }
//        }
//        if (enable) {
//            super.append(eventObject);
//        }
//    }
}
